#include<bits/stdc++.h>
using namespace std;
//int N=1e9;
int traid(int N)
{
	if(N==1)return 1;
	queue<int> que;
	que.push(1);
	que.push(1);
	int len,level=1;
	while(1)
	{
		++level;
		len=que.size();
		que.push(1);
		for(int i=1;i<len;i++)
		{
			int fir=que.front();
			que.pop();
			int sec=que.front();
			int temp=fir+sec;
			if(temp==N)
			return (level*(level+1))/2+i+1;
			que.push(temp);
		}
		que.pop();
		que.push(1);
		if(level>=1e8)
		break;
	}
	return 0;
}
int main()
{
//	int N;
//	cin>>N;
	cout<<traid(20000)<<endl;
}
